﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;

namespace Catalogo.Portable.Model
{
    [DataContract]
    public class Item : ModelBase
    {
        public Item() 
        { 
        
        }

        public Item(string id, string nome, string Descricao, string valor, string imageUrl, string subTitulo, string uri, string idCategoria)
        {
            this.Id = id;
            this.Nome = nome;
            this.Valor = valor;
            this.ImageUrl = imageUrl;
            this.SubTitulo = subTitulo;
            this.Uri = uri;
            this.IdCategoria = idCategoria;
        }

        private string _Id;
        [DataMember(Name = "id")]
        public string Id
        {
            get { return this._Id; }
            set { this.SetProperty(ref this._Id, value); }
        }

        private string _Nome;
        [DataMember]
        public string Nome
        {
            get { return this._Nome; }
            set { this.SetProperty(ref this._Nome, value); }
        }

        private string _Descricao;
        [DataMember]
        public string Descricao
        {
            get { return this._Descricao; }
            set { this.SetProperty(ref this._Descricao, value); }
        }

        private string _Valor;
        [DataMember]
        public string Valor
        {
            get { return this._Valor; }
            set { this.SetProperty(ref this._Valor, value); }
        }

        private string _imageUrl;
        [DataMember]
        public string ImageUrl
        {
            get { return this._imageUrl; }
            set { this.SetProperty(ref this._imageUrl, value); }
        }

        private string _SubTitulo;
        [DataMember]
        public string SubTitulo
        {
            get { return this._SubTitulo; }
            set { this.SetProperty(ref this._SubTitulo, value); }
        }

        private string _Uri;
        [DataMember]
        public string Uri
        {
            get { return this._Uri; }
            set { this.SetProperty(ref this._Uri, value); }
        }

        private Categoria _Categoria;
        [IgnoreDataMember]
        public Categoria Categoria
        {
            get { return this._Categoria; }
            set { this.SetProperty(ref this._Categoria, value); }
        }

        private string _IdCategoria;
        [DataMember(Name = "IDCategoria")]
        public string IdCategoria
        {
            get { return this._IdCategoria; }
            set { this.SetProperty(ref this._IdCategoria, value); }
        }

    }
}
